/*
 * Designed and developed by 2017 skydoves (Jaewoong Eum)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.skydoves.colorpickerview;

/**
 * 动作模式枚举，控制 {@link com.skydoves.colorpickerview.listeners.ColorPickerViewListener} 的调用时机。
 * <p>
 * 此枚举定义了颜色选择器在不同用户交互情况下触发颜色监听器的策略，
 * 开发者可以根据应用需求选择适合的模式以优化用户体验和性能。
 */
public enum ActionMode {
  /** 
   * 始终调用监听器模式。
   * 在用户点击或拖动时，每次颜色变化都会立即触发监听器。
   * 适用于需要实时响应颜色变化的场景，如调色板预览。
   */
  ALWAYS,

  /** 
   * 仅在最后调用监听器模式。
   * 只有当用户释放手指（完成操作）时才会触发监听器。
   * 适用于需要减少监听器调用次数以提高性能的场景，如批量颜色处理。
   */
  LAST
}
